Automated storage retrieval system connection and communication protocol

ABSTRACT

Systems, method and computer readable medium are provided for automated storage and retrieval. User authentication information is received via a user interface for a dynamic storage and retrieval device. The user identity is verified based upon the authentication information and previously stored authentication data. order information is retrieved for an order associated with the user following the verifying of user identity, the order information indicating one or more locations for items associated with the order. Instructions are transmitted to initiate a physical opening of at least one of the dynamic storage and retrieval device and at least one static storage location to enable the user to retrieve at least one item of the order, the static storage location including a controller controlling a locking mechanism and communicatively coupled to the dynamic storage and retrieval device.

RELATED APPLICATION

This application claims priority to, and the benefit of, U.S. Provisional Patent Application No. 62/697,124, filed Jul. 12, 2018, the contents of which are incorporated herein by reference in their entirety.

BACKGROUND

Online ordering has resulted in a new shopping experience wherein a customer can order items online then pick the order up in the store. The user doesn't have to traverse through the store, looking for items and wait in a line to check out the items being purchased. Instead, the user can order and pay online at a time that is convenient for the customer. The customer is notified when the order is ready for pickup. An end result is the shopping experience is made more convenient for the customer.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate one or more embodiments of the invention and, together with the description, help to explain the invention. The drawings are not necessarily to scale, or inclusive of all elements of a system, emphasis instead generally being placed upon illustrating the concepts, structures, and techniques sought to be protected herein. In the drawings:

FIG. 1 depicts an automated storage and retrieval system including a dynamic storage and retrieval device and a static storage location, according to an example embodiment.

FIG. 2 depicts a user interface of a dynamic storage and retrieval device according to an example embodiment.

FIG. 3 depicts a user presenting credentials to the user interface of the dynamic storage and retrieval device, according to an example embodiment.

FIG. 4 depicts a user retrieving an item from the dynamic storage and retrieval device according to an example embodiment.

FIG. 5 depicts a user retrieving an item from the static storage location according to an example embodiment.

FIG. 6 is a flow diagram illustrating an exemplary method for operating an automated storage and retrieval system, according to an example embodiment.

FIG. 7 is a diagram of an exemplary network environment suitable for an automated storage and retrieval system of exemplary embodiments.

FIG. 8 is a block diagram of an exemplary computing device that may be used to implement exemplary embodiments described herein.

DETAILED DESCRIPTION

Embodiments of the present invention provide a system, method and computer readable medium containing computer instructions for an automated storage and retrieval system. In one embodiment, a storage and retrieval system includes a dynamic storage and retrieval device and at least one static storage location. The dynamic storage and retrieval device includes a user interface configured to receive customer authentication input to enable the customer to gain access to at least one item of an order placed by the customer. The item may be stored in the dynamic storage and retrieval device or a static storage location that is communicatively coupled to the dynamic storage and retrieval device.

Referring to FIG. 1, a storage and retrieval system 100 in an exemplary embodiment is shown. The storage and retrieval system in the exemplary embodiment includes a dynamic storage and retrieval device 102 and a static storage location 106. In some embodiments, the dynamic storage and retrieval device 102, may have, but is not limited to, a tower configuration. In other embodiments, the dynamic storage and retrieval device 102 may be another form of storage and retrieval device such as a non-tower shaped devices including mobile robotic devices equipped with automated storage and/or retrieval mechanisms (e.g. a drone, AGV, etc.). In some embodiments, the static storage location 106, may be implemented in, but is not limited to, a locker configuration. In other embodiments, the static storage location may be another type of fixed location such as a room or area secured with a lockable door or opening. The static storage location 106 may be equipped with a controller controlling a lockable opening such as a gate, door or window for the static storage location.

The dynamic storage and retrieval device 102 includes a user interface 104. The user interacts with the automated storage and retrieval system by way of the user interface to enable the system to verify their identity and enable the user to pick up items that were ordered. For example, the user may provide authentication information via the user interface 104 such as by manually entering authentication information or by providing the authentication information wirelessly via a mobile device. In one embodiment, the authentication may be encoded into a machine-readable identifier by a mobile application on the user's mobile device and the machine-readable identifier may be scanned by a scanner in the dynamic storage and retrieval device. In another embodiment, the authentication information may be provided wirelessly to the dynamic storage and retrieval device 102. Once the authentication information has been verified, the items associated with the user's order may be retrieved. The ordered items may be located in the dynamic storage and retrieval device, may be in the static storage location, or in both. In one embodiment, the static storage location may be used to store items of a size greater or less than a size threshold from a customer order. A storage and retrieval system may include a single dynamic storage and retrieval device and one or more static storage locations. Each static storage location may operate independently of any other static storage locations.

The storage and retrieval system also includes at least one computing device executing a storage and retrieval module and at least one database holding user authentication information and information related to items contained in user orders. The computing device(s) executing the storage and retrieval module may be communicatively coupled to the dynamic storage and retrieval device 102 and the controller for the static storage location 106. The storage and retrieval module may receive the user authentication information from the dynamic storage and retrieval device 6102, verify the user's identity using the user authentication information from the database, and then retrieve order information for an order associated with the user following the verifying of the user's identity. The order information may indicate one or more locations for items associated with the order. The storage and retrieval module may transmit instructions to the dynamic storage retrieval device 102 and/or the static storage location to initiate a physical opening of the dynamic storage retrieval device 102 and/or the static storage location so as to enable the user to retrieve the items associated with the order. The storage and retrieval module may also transmit instructions to the dynamic storage and retrieval device 102 to initiate the automatic retrieval of an item from within the dynamic storage and retrieval device 102.

FIG. 2 shows a user 200 accessing the user interface 104 in an example embodiment. For example, the user may have previously ordered one or more items online, and received a notification that the order is ready to be picked up in the store. The user may interact with the storage and retrieval system via the user interface 104 to initiate the pickup process.

FIG. 3 depicts a user presenting credentials to the user interface of the dynamic storage and retrieval device, according to an example embodiment. The credentials 302 are used to verify the user identification and to identify an order associated with the user. Once the authentication is completed, the storage and retrieval module may transmit instructions to initiate a physical opening of the dynamic storage and retrieval device 102 and/or storage location 106 depending on the location of the items associated with the order. The instructions may cause the opening or may unlock the opening for a period of time to enable a user to retrieve an item. The storage and retrieval module may also transmit instructions to the dynamic storage and retrieval device 102 to initiate the automated retrieval of the items from within the dynamic storage and retrieval device. For example, the dynamic storage and retrieval device 102 may include automated conveyor belts, pushers, and/or retrieval arms or similar mechanisms within the dynamic storage and retrieval device which can be used to move an item from a storage location to the physical opening of the dynamic storage and retrieval device. In one embodiment, for example, a robotic arm may grasp an item and extend the item to a user through the opening. In another embodiment, the item may traverse the opening to the user after being place on a chute or conveyor that extends to the opening.

FIG. 4 depicts the user 200 retrieving an item 400 from an opening in the dynamic storage and retrieval device 102. FIG. 5 shows the same user 200 retrieving a second item 500 of her order from the static storage location 106. The particular storage cabinet/locker 502 is unlocked as a result of the transmitted instruction from the storage and retrieval module to a controller in the static storage location 106 to allow the user 200 access to the cabinet/locker 502.

In one embodiment, the instruction to unlock the opening of the static storage location 106 may be used in combination with a proximity sensor for the static storage location. For example, a proximity sensor disposed at the static storage location may be used to complete the unlocking process only when detecting the presence of a user directly in front of the static storage location when the unlock instruction has already been received from the retrieval and storage module. In one embodiment, the proximity sensor may be communicatively coupled to the storage and retrieval module and/or the controller for the locking mechanism. In another embodiment, a proximity or other sensor may wirelessly interrogate a mobile device of the user to provide an additional level of authentication before unlocking the opening/door/window for the static storage location 106.

FIG. 6 is a flow diagram showing illustrative processing that can be implemented within a system for an automated storage and retrieval system in an exemplary embodiment. Rectangular elements are herein denoted “processing blocks” and may represent actions performed at least in part by the execution of computer software instructions or groups of instructions. Alternatively, the processing blocks may represent steps performed by functionally equivalent circuits such as a digital signal processor (DSP) circuit or an application specific integrated circuit (ASIC). The flow diagrams do not depict the syntax of any particular programming language but rather illustrate the functional information one of ordinary skill in the art requires to fabricate circuits or to generate computer software to perform the processing required of the particular apparatus. It should be noted that many routine program elements, such as initialization of loops and variables and the use of temporary variables may be omitted for clarity. The particular sequence of blocks described is illustrative only and can be varied without departing from the spirit of the concepts, structures, and techniques sought to be protected herein. Thus, unless otherwise stated, the blocks described below are unordered meaning that, when possible, the functions represented by the blocks can be performed in any convenient or desirable order.

FIG. 6 is a flowchart illustrating an exemplary method 600 for operating a storage and retrieval system, according to an example embodiment. Method 600 starts by receiving user authentication information via a user interface for a dynamic storage and retrieval device (STEP 602). In one embodiment, the dynamic storage and retrieval device is a tower equipped with automated storage and retrieval mechanisms (step 604). The at least one storage location further includes at least one proximity sensor to detect the arrival of the user (step 606). In one example, the at least one proximity sensor interacts with an application executing on a mobile device operated by the user (step 608). In a non-limiting embodiment, the dynamic storage and retrieval device further includes a robotic arm configured to retrieve the item in response to a command from the storage and retrieval module (step 610). The robotic arm is further configured to extend the item through the physical opening after retrieval (step 612).

The method continues with the step of verifying user identity based upon the authentication information and previously stored authentication data (step 614). The next step is retrieving order information for an order associated with the user following the verifying of user identity, the order information indicating one or more locations for items associated with the order (step 616).

The method next includes transmitting instructions to initiate a physical opening of at least one of the dynamic storage and retrieval device and at least one static storage location to enable the user to retrieve at least one item of the order, the static storage location including a controller controlling a locking mechanism and communicatively coupled to the dynamic storage and retrieval device (step 618).

The static storage location is at least one of a locker and a location equipped with a lockable gate or opening (step 620. The storage retrieval module transmits instructions to initiate the physical opening of both the dynamic storage and retrieval device and the at least one static storage location.

FIG. 7 illustrates a network diagram depicting a system 700 for implementing the automated storage and retrieval system, according to an example embodiment. The system 700 can include a network 705, multiple client devices, for example, client device 710, client device 720, a server 730, and database(s) 740. Each of the client devices 710, 720, server 730, and database(s) 740 is in communication with the network 705.

In an example embodiment, one or more portions of network 705 may be an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless wide area network (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular telephone network, a wireless network, a WiFi network, a WiMax network, another type of network, or a combination of two or more such networks.

The client devices 710, 720 may comprise, but are not limited to, mobile devices, hand-held devices, wireless devices, portable devices, wearable computers, cellular or mobile phones, portable digital assistants (PDAs), smart phones, smart watches, tablets, ultrabooks, netbooks, laptops, desktops, multi-processor systems, microprocessor-based or programmable consumer electronics, and the like. Each of client devices 710, 720 may connect to network 705 via a wired or wireless connection. In an example embodiment, the client devices 710, 720 may perform one or more of the functionalities of the automated storage and retrieval system described herein, or transmit data or signals to the automated storage and retrieval system described herein. The client device 710, 720 can include one or more components of computing device 800 of FIG. 8.

In an example embodiment, the automated storage and retrieval system 100 may be included at least in part on the client device 710, 720, and the client device 710, 720 performs one or more of the functionalities of the system described herein. In an example embodiment, the automated storage and retrieval system may be included at least in part on the server 730, and the server 730 performs one or more of the functionalities of the targeted advertising system described herein.

The database(s) 740 comprise one or more storage devices for storing data and/or instructions (or code) for use by the server 730 and/or the client devices 710, 720. Each of the database(s) 740 and the server 730 is connected to the network 705 via a wired connection. Alternatively, one or more of the database(s) 740 and server 730 may be connected to the network 705 via a wireless connection. The server 730 comprises one or more computers or processors configured to communicate with the client devices 710, 720 via network 705. The server 730 can include one or more components of device 800 of FIG. 8. Server 730 hosts one or more software systems, applications or websites, including one or more components of the dynamic delivery system 100 described herein and/or facilitates access to the content of database(s) 740.

In an example embodiment, the server 730 also includes various software services that facilitate the functionalities of the automated storage and retrieval system. Database(s) 740 and server 730 may be located at one or more geographically distributed locations from each other or from client devices 710, 720. Alternatively, database(s) 740, 745 may be included within server 730. Server 730 may further include application services 732, security services 734, external services 737=6 and retail services 738.

FIG. 8 is a block diagram of an exemplary computing device 800 that can be used to perform one or more steps of the methods provided by exemplary embodiments. For example, computing device 800 may be the client device 710, 720 and the server 730 as described in FIG. 7. The computing device 800 includes one or more non-transitory computer-readable media for storing one or more computer-executable instructions or software for implementing exemplary embodiments. The non-transitory computer-readable media can include, but are not limited to, one or more types of hardware memory, non-transitory tangible media (for example, one or more magnetic storage disks, one or more optical disks, one or more USB flashdrives), and the like. For example, memory 806 included in the computing device 800 can store computer-readable and computer-executable instructions or software for implementing exemplary embodiments. The computing device 800 also includes processor 802 and associated core 804, and optionally, one or more additional processor(s) 802′ and associated core(s) 804′ (for example, in the case of computer systems having multiple processors/cores), for executing computer-readable and computer-executable instructions or software stored in the memory 806 and other programs for controlling system hardware. Processor 802 and processor(s) 802′ can each be a single core processor or multiple core (804 and 804′) processor.

Virtualization can be employed in the computing device 800 so that infrastructure and resources in the computing device can be shared dynamically. A virtual machine 814 can be provided to handle a process running on multiple processors so that the process appears to be using only one computing resource rather than multiple computing resources. Multiple virtual machines can also be used with one processor.

Memory 806 can include a computer system memory or random access memory, such as DRAM, SRAM, EDO RAM, and the like. Memory 806 can include other types of memory as well, or combinations thereof. An individual can interact with the computing device 800 through a visual display device 818, such as a touch screen display or computer monitor, which can display one or more user interfaces 822 for receiving data from the individual (e.g., order data and security data). The visual display device 818 can also display other aspects, elements and/or information or data associated with exemplary embodiments. The computing device 800 can include other I/O devices for receiving input from a individual, for example, a keyboard or another suitable multi-point touch interface 808, a pointing device 810 (e.g., a pen, stylus, mouse, or trackpad). The keyboard 808 and the pointing device 810 can be coupled to the visual display device 818. The computing device 800 can include other suitable conventional I/O peripherals.

The computing device 800 can also include one or more storage devices 824, such as a hard-drive, CD-ROM, or other computer readable media, for storing data and computer-readable instructions and/or software that implements exemplary embodiments of the automated storage and retrieval system as described herein, or portions thereof, which can be executed to generate user interface 822 on display 818. Exemplary storage device 824 can also store one or more databases for storing suitable information required to implement exemplary embodiments. The databases can be updated by an individual or automatically at a suitable time to add, delete or update one or more items in the databases. Exemplary storage device 824 can store one or more databases 826 for storing provisioned data, and other data/information used to implement exemplary embodiments of the systems and methods described herein.

The computing device 800 can include a network interface 812 configured to interface via one or more network devices 820 with one or more networks, for example, Local Area Network (LAN), Wide Area Network (WAN) or the Internet through a variety of connections including, but not limited to, standard telephone lines, LAN or WAN links (for example, 802.11, T1, T3, 86kb, X.25), broadband connections (for example, ISDN, Frame Relay, ATM), wireless connections, controller area network (CAN), or some combination of any or all of the above. The network interface 812 can include a built-in network adapter, network interface card, PCMCIA network card, card bus network adapter, wireless network adapter, USB network adapter, modem or another device suitable for interfacing the computing device 800 to a type of network capable of communication and performing the operations described herein. Moreover, the computing device 900 can be a computer system, such as a workstation, desktop computer, server, laptop, handheld computer, tablet computer (e.g., the iPad® tablet computer), mobile computing or communication device (e.g., the iPhone® communication device), or other form of computing or telecommunications device that is capable of communication and that has sufficient processor power and memory capacity to perform the operations described herein.

The computing device 800 can run an operating system 816, such as versions of the Microsoft® Windows® operating systems, the different releases of the Unix and Linux operating systems, a version of the MacOS® for Macintosh computers, an embedded operating system, a real-time operating system, an open source operating system, a proprietary operating system, an operating systems for mobile computing devices, or another operating system capable of running on the computing device and performing the operations described herein. In exemplary embodiments, the operating system 816 can be run in native mode or emulated mode. In an exemplary embodiment, the operating system 816 can be run on one or more cloud machine instances.

The description is presented to enable a person skilled in the art to create and use a computer system configuration and related method and systems for automated storage and retrieval. Various modifications to the example embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments and applications without departing from the spirit and scope of the invention. Moreover, in the following description, numerous details are set forth for the purpose of explanation. However, one of ordinary skill in the art will realize that the invention may be practiced without the use of these specific details. In other instances, well-known structures and processes are shown in block diagram form in order not to obscure the description of the invention with unnecessary detail. Thus, the present disclosure is not intended to be limited to the embodiments shown, but is to be accorded the widest scope consistent with the principles and features disclosed herein.

In describing exemplary embodiments, specific terminology is used for the sake of clarity. For purposes of description, each specific term is intended to at least include all technical and functional equivalents that operate in a similar manner to accomplish a similar purpose. Additionally, in some instances where a particular exemplary embodiment includes a plurality of system elements, device components or method steps, those elements, components or steps can be replaced with a single element, component or step. Likewise, a single element, component or step can be replaced with a plurality of elements, components or steps that serve the same purpose. Moreover, while exemplary embodiments have been shown and described with references to particular embodiments thereof, those of ordinary skill in the art will understand that various substitutions and alterations in form and detail can be made therein without departing from the scope of the invention. Further still, other aspects, functions and advantages are also within the scope of the invention.

Exemplary flowcharts have been provided herein for illustrative purposes and are non-limiting examples of methods. One of ordinary skill in the art will recognize that exemplary methods can include more or fewer steps than those illustrated in the exemplary flowcharts, and that the steps in the exemplary flowcharts can be performed in a different order than the order shown in the illustrative flowcharts.

Having described certain embodiments, which serve to illustrate various concepts, structures, and techniques sought to be protected herein, it will be apparent to those of ordinary skill in the art that other embodiments incorporating these concepts, structures, and techniques may be used. Elements of different embodiments described hereinabove may be combined to form other embodiments not specifically set forth above and, further, elements described in the context of a single embodiment may be provided separately or in any suitable sub-combination. Accordingly, it is submitted that the scope of protection sought herein should not be limited to the described embodiments but rather should be limited only by the spirit and scope of the following claims. 

What is claimed is:
 1. An automated storage and retrieval system, the system comprising: a dynamic storage and retrieval device having a user interface; at least one static storage location, the static storage location including a controller controlling a locking mechanism and communicatively coupled to the dynamic storage and retrieval device; one or more databases holding user authentication data and order information regarding one or more items for a plurality of user orders; and a computing device in communication with the dynamic storage and retrieval device, the computing device configured to execute a storage and retrieval module, wherein the storage and retrieval module, when executed: receives user authentication information via the user interface, verifies user identity based upon the authentication information and authentication data, retrieves order information for an order associated with the user following the verifying of user identity, the order information indicating one or more locations for items associated with the order, and transmits instructions to initiate a physical opening of at least one of the dynamic storage and retrieval device and the at least one static storage location to enable the user to retrieve at least one item of the order.
 2. The system of claim 1 wherein the dynamic storage and retrieval device is a tower equipped with automated storage and retrieval mechanisms.
 3. The system of claim 1 wherein the static storage location is at least one of a locker and a location equipped with a lockable gate or opening.
 4. The system of claim 1 wherein the storage retrieval module transmits instructions to initiate the physical opening of both the dynamic storage and retrieval device and the at least one static storage location.
 5. The system of claim 1 wherein the at least one storage location further includes: at least one proximity sensor to detect the arrival of the user.
 6. The system of claim 5 wherein the at least one proximity sensor interacts with an application executing on a mobile device operated by the user.
 7. The system of claim 1 wherein the dynamic storage and retrieval device further includes: a robotic arm configured to retrieve the item in response to a command from the storage and retrieval module.
 8. The system of claim 7 wherein the robotic arm is further configured to extend the item through the physical opening after retrieval.
 9. A computing device-implemented method for automated storage and retrieval, the method comprising: receiving user authentication information via a user interface for a dynamic storage and retrieval device; verifying user identity based upon the authentication information and previously stored authentication data; retrieving order information for an order associated with the user following the verifying of user identity, the order information indicating one or more locations for items associated with the order, and transmitting instructions to initiate a physical opening of at least one of the dynamic storage and retrieval device and at least one static storage location to enable the user to retrieve at least one item of the order, the static storage location including a controller controlling a locking mechanism and communicatively coupled to the dynamic storage and retrieval device.
 10. The method of claim 9 wherein the dynamic storage and retrieval device is a tower equipped with automated storage and retrieval mechanisms.
 11. The method of claim 9 wherein the static storage location is at least one of a locker and a location equipped with a lockable gate or opening.
 12. The method of claim 9 wherein the storage retrieval module transmits instructions to initiate the physical opening of both the dynamic storage and retrieval device and the at least one static storage location.
 13. The method of claim 9 wherein the at least one storage location further includes: at least one proximity sensor to detect the arrival of the user.
 14. The method of claim 13 wherein the at least one proximity sensor interacts with an application executing on a mobile device operated by the user.
 15. The method of claim 9 wherein the dynamic storage and retrieval device further includes: a robotic arm configured to retrieve the item in response to a command from the storage and retrieval module.
 16. The method of claim 15 wherein the robotic arm is further configured to extend the item through the physical opening after retrieval.
 17. A non-transitory machine-readable medium storing instructions executable by a computing device, wherein execution of the instructions causes the computing device to implement a method for automated storage and retrieval, the method comprising: receiving user authentication information via a user interface for a dynamic storage and retrieval device; verifying user identity based upon the authentication information and previously stored authentication data; retrieving order information for an order associated with the user following the verifying of user identity, the order information indicating one or more locations for items associated with the order, and transmitting instructions to initiate a physical opening of at least one of the dynamic storage and retrieval device and at least one static storage location to enable the user to retrieve at least one item of the order, the static storage location including a controller controlling a locking mechanism and communicatively coupled to the dynamic storage and retrieval device.
 18. The non-transitory machine-readable medium of claim 17 further comprising instructions wherein the dynamic storage and retrieval device is a tower equipped with automated storage and retrieval mechanisms.
 19. The non-transitory machine-readable medium of claim 17 further comprising: instructions wherein the static storage location is at least one of a locker and a location equipped with a lockable gate or opening; and wherein the at least one storage location further includes at least one proximity sensor to detect the arrival of the user, wherein the at least one proximity sensor interacts with an application executing on a mobile device operated by the user.
 20. The non-transitory machine-readable medium of claim 17 wherein the at least one storage location further includes at least one proximity sensor to detect the arrival of the user, and wherein the at least one proximity sensor interacts with an application executing on a mobile device operated by the user. 